package xin.petstore.framework.utils;

import java.util.Collection;
import java.util.Map;

public class ObjectUtils {
    public static boolean isNullOrEmpty(Object obj) {
        if (obj == null) {
            return true;
        }
        if ((obj instanceof CharSequence)) {
            return ((CharSequence) obj).length() == 0;
        }
        if ((obj instanceof Collection)) {
            return ((Collection) obj).isEmpty();
        }
        if ((obj instanceof Map)) {
            return ((Map) obj).isEmpty();
        }
        if ((obj instanceof Object[])) {
            Object[] object = (Object[]) obj;
            if (object.length == 0) {
                return true;
            }
            boolean empty = true;
            for (int i = 0; i < object.length; i++) {
                if (!isNullOrEmpty(object[i])) {
                    empty = false;
                    break;
                }
            }
            return empty;
        }
        return false;
    }

    public static boolean isNotNullOrEmpty(Object o) {
        return !isNullOrEmpty(o);
    }
}
